package com.maas.util.mybatis.jpa.littlenb.conditions.kot;


import com.maas.util.mybatis.jpa.littlenb.conditions.kot.common.CT;
import com.maas.util.mybatis.jpa.littlenb.conditions.kot.provider.BaseProvider;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.SelectProvider;

import java.util.List;
import java.util.Map;
import java.util.Set;

/**
 * 条件构造器mapper
 * @author viaco
 */
public interface ConditionsMapper<T> {
    @SelectProvider(type = BaseProvider.class,method="list")
    List<T> list(@Param(CT.COLUMNS) Set<String> columns, @Param(CT.SQL_CONDITION) String conditionList, @Param(CT.ALIAS_CONDITION) Map<String, Object> conditionMap, @Param(CT.ALIAS_ENTITY) T entity);

}
